编译CSS为:

    1. color: #fff;
    2. }

    如果愿意,你也可以使用冒号分隔符:

    1. body
    2. color: white

    Stylus就像CSS一样,允许你使用逗号同时给多个选择器定义属性。

    1. textarea, input
    2. border 1px solid #eee

    同样可以用换行达到一样效果:

    1. textarea
    2. input
    3. border 1px solid #eee

    编译CSS为:

    1. foo bar baz
    2. > input
    3. border 1px solid

    所以出于这个原因(或者首选解决方法),我们使用逗号分隔:

    1. form input,
    2. > a
    3. border 1px solid

    字符表示父级选择器。下面的示例中,我们两个选择器 (textarea和input)通过:hover伪选择器都改变了color色值。

    1. textarea
    2. input
    3. color #A7A7A7
    4. &:hover
    5. color #000

    编译CSS为:

    1. textarea,
    2. input {
    3. color: #a7a7a7;
    4. }
    5. textarea:hover,
    6. input:hover {
    7. color: #000;
    8. }

    下面这个例子,在IE浏览器利用了父级引用以及混合来实现宽度为2px的边框。

    编译CSS为:

    1. body #login {
    2. -moz-box-shadow: 1px 1px 3px #eee;
    3. }
    4. html.ie8 body #login,
    5. html.ie7 body #login,
    6. html.ie6 body #login {
    7. border: 2px solid #eee;
    8. }
    1. pad(n)
    2. padding (- n)
    3. body
    4. pad(5px)

    编译CSS为:

    1. body {
    2. padding: -5px;
    3. }

    然而,只有在函数中才会存在这问题(因为函数返回值同时扮演了混合或回调)。

    下面这个例子就没有问题(产生与上面相同的结果):

    1. body

    是否有Stylus无法处理的属性值?unquote()可以帮助你:

    编译CSS为: